package com.itmuch.contentcenter;


import com.itmuch.contentcenter.configuration.UserCenterFeignConfiguration;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.alibaba.sentinel.annotation.SentinelRestTemplate;
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.messaging.Source;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;
import tk.mybatis.spring.annotation.MapperScan;

//扫描mybatis里面的哪些接口
@MapperScan("com.itmuch")
@SpringBootApplication
@EnableFeignClients//(defaultConfiguration = UserCenterFeignConfiguration.class)
@EnableBinding(Source.class)
public class ContentCenterApplication {

  public static void main(String[] args) {
    SpringApplication.run(ContentCenterApplication.class, args);
  }

  /**
  在spring容器中创建一个对象, 类型为RestTemplate, id为方法名 restTemplate
  等同于 <bean id="restTemplate" class="xxx.RestTemplate" ></bean>
   */
  @Bean
  @LoadBalanced
  @SentinelRestTemplate
  public RestTemplate restTemplate(){
    return new RestTemplate();
  }

}

